/**
 * Copyright © 2021-2025 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.doctor.service.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jeeplus.core.excel.annotation.ExcelDictProperty;
import com.jeeplus.core.excel.converter.ExcelDictDTOConverter;
import com.jeeplus.core.excel.converter.ExcelOfficeDTOConverter;
import com.jeeplus.core.query.Query;
import com.jeeplus.core.query.QueryType;
import com.jeeplus.core.service.dto.BaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 医生信息DTO
 * @author xx
 * @version 2024-02-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class DoctorInfoDTO extends BaseDTO {
	private static final long serialVersionUID = 1L;
	@Query(type = QueryType.EQ)
	private String id;
	/**
     * 姓名
     */
	@ExcelProperty("姓名")
	@Query(type = QueryType.LIKE)
	private String doctorName;
	        
	/**
     * 科室
     */
    @ExcelProperty(value = "科室", converter = ExcelOfficeDTOConverter.class)
	@Query(type = QueryType.EQ)
	private String deptId;
	        
	/**
     * 医生介绍
     */
	@ExcelProperty("医生介绍") 
	private String doctorDesc;


	/**
	 * 身份证号
	 */
	@Query(type = QueryType.LIKE)
	@ExcelProperty("身份证号")
	private String idCardNumber;

	/**
	 * 性别
	 */
	@ExcelProperty(value = "性别", converter = ExcelDictDTOConverter.class)
	@ExcelDictProperty("sex")
	private String gender;

	/**
	 * 年龄
	 */
	@ExcelProperty("年龄")
	private Integer age;

	/**
	 * 手机号
	 */
	@Query(type = QueryType.LIKE)
	@ExcelProperty("手机号")
	private String doctorPhone;

	/**
	 * 出生日期
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelProperty("出生日期")
	private Date birthDate;

	/**
	 * 住址
	 */
	@ExcelProperty("住址")
	private String address;

	@TableField(exist = false)
	private String photo;

}
